{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {
    "collapsed": true,
    "pycharm": {
     "name": "#%% md\n"
    }
   },
   "source": [
    "目录\n",
    "\n",
    "* [使用线性SVM解决线性可分问题](#使用线性SVM解决线性可分问题)\n",
    "* [使用kernel-SVM解决非线性问题](#使用非线性kernel-SVM解决非线性问题)\n",
    "\n",
    "## 使用线性SVM解决线性可分问题"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "outputs": [],
   "source": [
    "from sklearn import datasets\n",
    "from sklearn.model_selection import train_test_split\n",
    "from sklearn.preprocessing import StandardScaler\n",
    "from sklearn.svm import SVC\n",
    "import numpy as np\n",
    "\n",
    "from matplotlib import pyplot as plt\n",
    "from matplotlib.colors import ListedColormap"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(150, 2) (150,)\n",
      "Class labels: [0 1 2]\n"
     ]
    }
   ],
   "source": [
    "# 准备鸢尾花数据集\n",
    "iris = datasets.load_iris()\n",
    "\n",
    "# iris.data 一共有4个特征\n",
    "X = iris.data[:,[2,3]] # 只使用2个特征: petal length and petal width 以及3个类别\n",
    "y = iris.target\n",
    "print(X.shape, y.shape)\n",
    "print('Class labels:', np.unique(y))"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "outputs": [],
   "source": [
    "X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state=1, stratify=y)\n",
    "# standardize the features 以获得最佳性能\n",
    "sc = StandardScaler()\n",
    "sc.fit(X_train)\n",
    "X_train_std = sc.transform(X_train)\n",
    "X_test_std = sc.transform(X_test)"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "outputs": [],
   "source": [
    "# 绘制分类决策边界：\n",
    "def plot_decision_regions(X, y, classifier, test_idx=None, resolution=0.02):\n",
    "     # setup marker generator and color map\n",
    "     markers = ('s', 'x', 'o', '^', 'v')\n",
    "     colors = ('red', 'blue', 'lightgreen', 'gray', 'cyan')\n",
    "     cmap = ListedColormap(colors[:len(np.unique(y))])\n",
    "\n",
    "     # plot the decision surface\n",
    "     x1_min, x1_max = X[:, 0].min() - 1, X[:, 0].max() + 1\n",
    "     x2_min, x2_max = X[:, 1].min() - 1, X[:, 1].max() + 1\n",
    "     xx1, xx2 = np.meshgrid(np.arange(x1_min, x1_max, resolution),\n",
    "                            np.arange(x2_min, x2_max, resolution))\n",
    "     Z = classifier.predict(np.array([xx1.ravel(), xx2.ravel()]).T)\n",
    "     Z = Z.reshape(xx1.shape)\n",
    "     plt.contourf(xx1, xx2, Z, alpha=0.3, cmap=cmap)\n",
    "     plt.xlim(xx1.min(), xx1.max())\n",
    "     plt.ylim(xx2.min(), xx2.max())\n",
    "\n",
    "     for idx, cl in enumerate(np.unique(y)):\n",
    "         plt.scatter(x=X[y == cl, 0], y=X[y == cl, 1],\n",
    "         alpha=0.8, c=colors[idx],\n",
    "         marker=markers[idx], label=cl,\n",
    "         edgecolor='black')\n",
    "\n",
    "     # highlight test samples\n",
    "     if test_idx:\n",
    "         # plot all samples\n",
    "         X_test, y_test = X[test_idx, :], y[test_idx]\n",
    "         plt.scatter(X_test[:, 0], X_test[:, 1],\n",
    "                     c='', edgecolor='black', alpha=1.0,\n",
    "                     linewidth=1, marker='o',\n",
    "                     s=100, label='test set')"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:32: MatplotlibDeprecationWarning: Using a string of single character colors as a color sequence is deprecated since 3.2 and will be removed two minor releases later. Use an explicit list instead.\n"
     ]
    },
    {
     "data": {
      "text/plain": "<Figure size 432x288 with 1 Axes>",
      "image/png": "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\n"
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "X_combined_std = np.vstack((X_train_std, X_test_std))\n",
    "y_combined = np.hstack((y_train, y_test))\n",
    "\n",
    "svm = SVC(kernel='linear', C=1.0, random_state=1)\n",
    "svm.fit(X_train_std, y_train)\n",
    "plot_decision_regions(X_combined_std, y_combined, classifier=svm, test_idx=range(105, 150))\n",
    "plt.xlabel('petal length [standardized]')\n",
    "plt.ylabel('petal width [standardized]')\n",
    "plt.legend(loc='upper left')\n",
    "plt.show()"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/usr/local/lib/python3.6/dist-packages/ipykernel_launcher.py:32: MatplotlibDeprecationWarning: Using a string of single character colors as a color sequence is deprecated since 3.2 and will be removed two minor releases later. Use an explicit list instead.\n"
     ]
    },
    {
     "data": {
      "text/plain": "<Figure size 432x288 with 1 Axes>",
      "image/png": "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\n"
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 实现rbf核以及相对较小的\\gamma 值，能得到更加soft的决策边界\n",
    "svm = SVC(kernel='rbf', random_state=1, gamma=0.2, C=1.0)\n",
    "svm.fit(X_train_std, y_train)\n",
    "plot_decision_regions(X_combined_std, y_combined, classifier=svm, test_idx=range(105,150))\n",
    "plt.xlabel('petal length [standardized]')\n",
    "plt.ylabel('petal width [standardized]')\n",
    "plt.legend(loc='upper left')\n",
    "plt.show()"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "markdown",
   "source": [
    "## 使用非线性kernel-SVM解决非线性问题"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%% md\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 432x288 with 1 Axes>",
      "image/png": "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\n"
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# 创建一个简单的数据集，它具有XOR门的形式\n",
    "# 其中100个样本将被分配给类标签1，100个样本将被分配给类标签-1\n",
    "np.random.seed(1)\n",
    "X_xor = np.random.randn(200, 2)\n",
    "y_xor = np.logical_xor(X_xor[:, 0] > 0, X_xor[:, 1] > 0)\n",
    "y_xor = np.where(y_xor, 1, -1)\n",
    "plt.scatter(X_xor[y_xor == 1, 0], X_xor[y_xor == 1, 1], c='b', marker='x', label='1')\n",
    "plt.scatter(X_xor[y_xor == -1, 0], X_xor[y_xor == -1, 1], c='r', marker='s', label='-1')\n",
    "plt.xlim([-3, 3])\n",
    "plt.ylim([-3, 3])\n",
    "plt.legend(loc='best')\n",
    "plt.show()"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "outputs": [
    {
     "data": {
      "text/plain": "<Figure size 432x288 with 1 Axes>",
      "image/png": "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\n"
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "svm = SVC(kernel='rbf', random_state=1, gamma=0.10, C=10.0)\n",
    "svm.fit(X_xor, y_xor)\n",
    "plot_decision_regions(X_xor, y_xor, classifier=svm)\n",
    "plt.legend(loc='upper left')\n",
    "plt.show()"
   ],
   "metadata": {
    "collapsed": false,
    "pycharm": {
     "name": "#%%\n"
    }
   }
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}